#!/usr/bin/python
# -*- coding: utf8 -*-

#######################################################
## 多线程编程， 互斥锁
# 1、线程的使用
# 2、多线程访问 互斥锁保护全局变量
#######################################################

from threading import Thread, Lock
import time

n = 100

def task():
    global n
    mutex.acquire()
    temp = n
    time.sleep(1)
    n = temp - 1
    print("购买成功， 剩余 %d 张电影票" % n)
    mutex.release()

if __name__ == "__main__":
    mutex = Lock()
    list = []
    for i in range(10):
        th = Thread(target=task)
        list.append(th)
        th.start()

    for th in list:
        th.join()